package com.threeox.ormlibrary.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 *
 * @ClassName: AddColumn
 *
 * @Description: (添加列的注解)
 *
 * @author 赵屈犇
 *
 * @date 创建时间:2016/12/16 15:53
 *
 * @version 1.0
 */
@Target({ ElementType.FIELD })
@Retention(RetentionPolicy.RUNTIME)
public @interface AddColumn {

	// 列名称 必须和对象的名称一致 默认可以不写
	String columnName() default "";

	// 列类型 默认以对象的类型进行转换
	String columnType() default "";

	// 默认值
	String defaultVal() default "";

	// 当前列所占大小  默认为不设置
	String length() default "";

    // CHECK 约束启用输入一条记录要检查值的条件。如果条件值为 false，则记录违反了约束，且不能输入到表
    String check() default "";

	// 表字段的备注说明
	String comment() default "";

	// 是否为主键
	boolean isPrimary() default false;

	// 是否递增数据
	boolean isAutoIncrement() default false;

	// 是否不为null
	boolean isNotNull() default false;

	// 是否进行相同值约束
	boolean isUnique() default false;

}
